package mobi.hami.huapin.service;

import mobi.hami.huapin.dto.PageDTO;
import mobi.hami.huapin.model.Product;
import mobi.hami.huapin.model.base.PageVO;

import java.util.List;
import java.util.Map;

/**
 *  商品服务
 *
 * @author 阿飞 jijunjian@hami.mobi
 * @date 2018/7/9 21:45
 */
public interface ProductService {

    /**
     * 修改商品状态
     * @param product
     * @return
     */
    int  updateDelete (Product  product);
    /**
     * 获取分页商品
     * @param product
     * @return
     */
    PageDTO<Product> getListPage(PageDTO page);
    /**
     * 保存商品
     * @param product
     * @return
     */
    int save(Product product);

    /**
     * 更新商品
     * @param product
     * @return
     */
    int update(Product product);

    /**
     * 更新商品
     * @param spuid
     * @return
     */
    int delete(Long spuid);

    /**
     * 查询一个商品
     * @param spuid
     * @return
     */
    Product getOney(Long spuid);

    /**
     * 测试商品
     * @param subject_id
     * @return
     */
     List<Product> getTestList(int subject_id);



    /**
     * jdbtest
     * @param
     * @return
     */
    int jdbcTest();

    /**
     * 分页获取
     * @param pageindex
     * @param pagesize
     * @param order
     * @param where
     * @return
     */
    PageVO<Product> getListBox(int pageindex, int pagesize, String order, String where);


    /**
     * 分页获取 test
     * @param pageindex
     * @param pagesize
     * @param order
     * @param reqMap
     * @return
     */
    PageVO<Product> getListBoxTest(int pageindex, int pagesize, String order,  Map<String,Object> reqMap);

    /**
     * 查询条数
     * @param reqMap
     * @return
     */
    int getCount(Map<String,Object> reqMap);
    /**
     * mapper 分页
     * @param pageindex
     * @param pagesize
     * @param order
     * @return
     */
    PageVO<Product> pageTest(int pageindex, int pagesize, String order, Product smarBoxCompanyDTO);

    /**
     * 查询条数
     * @param where
     * @return
     */
    int getCount(String where);

}
